home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / programm.ing / sources.arc / DANG_SRC.LZH / D_USER.C < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-12  |  3.3 KB  |  122 lines

  1.  
  2. #include<globals2.h>
  3. /* This module :        
  4.                   - recieves the var dir
  5.                   - and displays the users stats
  6.                   - checks for experience and will 
  7.                     award a new lvl plus unc stats etc.
  8.                                                          */
  9.   display_user_stats()  
  10.   {
  11.    static int str,dex,inte,wis,con;
  12.    static long int hp,sp;
  13.  
  14.    
  15.  
  16.    
  17. if(user.exp > (user.lvl*100))
  18.  {
  19.    v_gtext(handle,6,19,"You gained a level!");
  20.    user.lvl++;
  21.    user.str++;
  22.    user.dex++;
  23.    user.inte++;
  24.    user.wis++;
  25.    user.con++;
  26.    user.max_hp+=(abs(user.con-18));
  27.    user.max_sp+=(abs(user.wis-18));
  28.    user.hp = user.max_hp;
  29.    user.sp = user.max_sp;
  30.  }
  31.   
  32. /* put this const shit in the main module! */
  33.    
  34.     v_gtext(handle,74,104,user.name);   
  35.     v_gtext(handle,74,112,user.align);
  36.    v_gtext(handle,74,120,user.class);
  37.     sprintf(string,"%d",user.ac);
  38.  
  39.  
  40.     v_gtext(handle,80,128,string);
  41.  
  42.  
  43.    
  44.     sprintf(string,"%d",user.lvl);
  45.     v_gtext(handle,80,136,string);
  46.  
  47.  
  48.  
  49.   
  50.  
  51.  
  52.   if( user.str < 10 && str == 10 || 
  53.       user.str < 100 && str == 100)   /* if previous was > 9 and now its 9, clear */
  54.     v_gtext(handle,24,144,"           "); /* clear it. */
  55.    
  56.     sprintf(string,"%d",user.str);
  57.     v_gtext(handle,80,144,string);
  58.  
  59.  if( user.inte < 10 &&   inte == 10 || 
  60.       user.inte < 100 && inte == 100)   /* if previous was > 9 and now its 9, clear */
  61.       v_gtext(handle,24,152,"           "); /* clear it. */
  62.   
  63.   sprintf(string,"%d",user.inte);
  64.     v_gtext(handle,80,152,string);
  65.  
  66.  if( user.dex < 10 &&   dex == 10 || 
  67.       user.dex < 100 && dex == 100)   /* if previous was > 9 and now its 9, clear */
  68.       v_gtext(handle,24,160,"           "); /* clear it. */
  69.  
  70.   sprintf(string,"%d",user.dex);
  71.     v_gtext(handle,80,160,string);  
  72.  
  73.  
  74.  sprintf(string,"Direction:%c",dir);
  75. v_gtext(handle,204,118,string);
  76.  
  77.  
  78.  
  79.  if( user.hp < 10 &&   hp == 10 || 
  80.       user.hp < 100 && hp == 100)   /* if previous was > 9 and now its 9, clear */
  81.       v_gtext(handle,204,148,"           "); /* clear it. */
  82.  
  83.      sprintf(string,"%ld",user.hp);
  84.     v_gtext(handle,259,148,string); 
  85.  if( user.sp < 10 &&   sp == 10 || 
  86.       user.sp < 100 && sp == 100)   /* if previous was > 9 and now its 9, clear */
  87.       v_gtext(handle,204,156,"           "); /* clear it. */
  88.  
  89.      sprintf(string,"%ld",user.sp);
  90.     v_gtext(handle,259,156,string); 
  91.  
  92.                                         /* display hunger/thurst stat */
  93.   switch(user.hunger_thurst_status[0])
  94.   {
  95.    case 0:
  96.    case 1:
  97.    case 2:
  98.    case 3: v_gtext(handle,204,126,"         "); break;
  99.    case 4: v_gtext(handle,204,126,"Hungry   "); break;
  100.    case 5: case 6: case 7: v_gtext(handle,204,126,"Starving!"); break;
  101.    case 8: case 9: case 10:v_gtext(handle,204,126,"Famished!"); break;
  102.   }
  103.    switch(user.hunger_thurst_status[1])
  104.   {
  105.    case 0:
  106.    case 1:
  107.    case 2:
  108.    case 3: v_gtext(handle,204,134,"       "); break;
  109.    case 4: v_gtext(handle,204,134,"Thirsty"); break;
  110.    case 5: case 6: case 7:
  111.    case 8: case 9: case 10:v_gtext(handle,204,134,"Parched"); break;
  112.   }
  113.   
  114.                         /* get new previous values */
  115. str = user.str;  dex = user.dex;  con = user.con; inte= user.inte;
  116. hp = user.hp; sp = user.sp; 
  117.  
  118.     
  119.  
  120.    }       
  121.  
  122.